.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\" %%%LICENSE_END
.\"
.\" References consulted:
.\"   GNU glibc-2 source code and manual
.\"   Dinkumware C library reference http://www.dinkumware.com/
.\"   OpenGroup's Single UNIX specification
.\"      http://www.UNIX-systems.org/online.html
.\"   ISO/IEC 9899:1999
.\"
.TH PUTWCHAR 3  2021-03-22 "GNU" "Linux Programmer's Manual"
.SH NAME
putwchar \- write a wide character to standard output
.SH SYNOPSIS
.nf
.B #include <wchar.h>
.PP
.BI "wint_t putwchar(wchar_t " wc );
.fi
.SH DESCRIPTION
The
.BR putwchar ()
function is the wide-character equivalent of the
.BR putchar (3)
function.
It writes the wide character
.I wc
to
.IR stdout .
If
.I ferror(stdout)
becomes true, it returns
.BR WEOF .
If a wide character
conversion error occurs, it sets
.IR errno
to
.B EILSEQ
and returns
.BR WEOF .
Otherwise, it returns
.IR wc .
.PP
For a nonlocking counterpart, see
.BR unlocked_stdio (3).
.SH RETURN VALUE
The
.BR putwchar ()
function returns
.I wc
if no error occurred, or
.B WEOF
to indicate an error.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.ad l
.nh
.TS
allbox;
lbx lb lb
l l l.
Interface	Attribute	Value
T{
.BR putwchar ()
T}	Thread safety	MT-Safe
.TE
.hy
.ad
.sp 1
.SH CONFORMING TO
POSIX.1-2001, POSIX.1-2008, C99.
.SH NOTES
The behavior of
.BR putwchar ()
depends on the
.B LC_CTYPE
category of the
current locale.
.PP
It is reasonable to expect that
.BR putwchar ()
will actually write
the multibyte sequence corresponding to the wide character
.IR wc .
.SH SEE ALSO
.BR fputwc (3),
.BR unlocked_stdio (3)
.SH COLOPHON
This page is part of release 5.13 of the Linux
.I man-pages
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
\%https://www.kernel.org/doc/man\-pages/.
